Prior to the advent and prolific use of distributed network environments such as the Internet, customer service sessions typically occurred over a teleconference between a customer service agent or service specialist and a customer. These teleconferences, which incidentally are still very popular today, are initiated by a customer placing a phone call to a customer service agent. The customer service agent's phone receives the call through a public-switched telephone network (PSTN). Many support centers handle a large volume of inquiries, usually by phone, for sales, information, customer support and other services. Typical support centers provide the ability to route multiple incoming, customer-initiated calls to agents which provide sales, information, or support on behalf of an entity interested in establishing or maintaining a relationship with the customer.
Modern support center systems selectively route incoming calls based on a number of factors such as the number called or dialed, the originating number, the queued sequence of the caller, the geographic location of the caller, accumulated caller history, and other relevant criteria. Once the system has evaluated the inbound caller's information, if any, the system searches for an available agent to service the call. Availability of agents may be dependent on any number of factors such as a skill area, level of that skill and/or a schedule of the agent. The number of agents within the contact center and available to the system may often be limited by the physical space available for the agents to operate. Contact centers have to deal with a limited number of agents to handle a large number of incoming customer calls. Typically, when an end user initiates a contact with the support center, the end user has to know or maintain the detailed information regarding how to reach people and/or obtain services from the support center.
Most conventional systems connect a user with an agent based on solely the static user information of the user with static agent information of the agent, such as subject matter to skill set matching. The selection of an agent does not take into the personality of the user and/or agent. Most of the time such static information is not up-to-date. Such matching often leads to unsatisfactory user experience.